The objective of image coding is to compress the number of bits needed to represent an image without introducing significant visible distortion in the coded image. A system which is often used for image coding utilizes an interframe hybrid coding system with motion compensation. This system consists of a DPCM loop in which a prediction of the current frame is subtracted from the current frame and the result is transformed by a two-dimensional Discrete Cosine Transform (DCT) into transform coefficients. A property of the DCT is that it decorrelates the image data block by block. The DCT coefficients are quantized and amplitude and run length coded. By this process the number of bits used to represent the image is considerably reduced. The resulting bitstream is inherently variable in rate. Therefore, a FIFO buffer is used to smooth out the variation in the bit rate and output a constant bit rate which is lower than the original bit rate of the video signal by at least an order of magnitude. A buffer control strategy is used in order to prevent overflow or underflow of the buffer. Typically, the buffer control is accomplished by monitoring the status of the FIFO buffer and varying the quantization step size of the quantizer.
An important part of the above system is the forming of the prediction of the current frame. Normally, the prediction that is most suited for video frames is the motion compensated previous frame. The motion compensation is performed on blocks of pixels, called motion blocks, by block matching. For every motion block of pixels in the current frame of video, a block referred to as a matching block is found in the previous frame which resembles it as closely as possible. This block is the predictor for the motion block in the current video frame.
Presently known methods for block matching employ a criterion such as Minimum Absolute Block Difference (MABD) or Minimum Squared Block Difference (MSBD). A figure of merit is derived indicating how close the motion block of the current frame is to a block being examined in the previous frame, and a match is declared if the figure of merit is less than some arbitrarily selected threshold value. In a case where a number of candidates come close to but do not exceed the threshold, prior methods pick the one with the smallest ABD or SBD without regard to the number of bits required to codify them for transmission.